Part Number Hot Search : 
FT313HP AD1893JN 07700 MPC9449 BTS7960B 0SPBF 9843H A5358
Product Description
Full Text Search
 

To Download DS2490S Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  1 of 50 033199 features communicates at regular and overdrive 1- wire speeds supports 12v eprom programming and stiff 5v pullup for crypto i button, sensors and eeprom slew rate controlled 1-wire timing and active pullup to accommodate long lines and reduce radiation programmable 1-wire timing and driver characteristics accommodate a wide range of microlan configurations at regular speed smart 1-wire protocol combines data and control information without requiring extra pins high-speed 12 mbps usb interface integrated usb-compliant transceiver supports usb remote wakeup to resume a suspended host system pin assignment 16-pin soic 300-mil ordering information DS2490S 16-pin soic description the ds2490 is a bridge chip that enables communication between the universal serial bus (usb) and a 1-wire bus. it provides regular, overdrive and flexible 1-wire communication speeds and a full-speed 12 mbps connection to usb. usb vendor-specific commands defined in this specification are used to control the ds2490 and communicate with attached 1-wire devices. a functional block diagram of the ds2490 is shown in figure 1. ds2490 usb to 1-wire tm bridge chip www.dalsemi.com preliminary
ds2490 2 of 50 033199 signal summary table 1 signal name type function vd pwr power supply input for digital and 1-wire functions. range: 5.0 10% vpp pwr power supply input for 1-wire eprom programming. range: 12v 0.25v vb pwr power supply input for usb functions. range: 3.3v 10% supply regulated from usb supplied vbus. d+ i/o usb data - non-inverted of differential data pair. d- i/o usb data - inverted signal of differential data pair. 1-wire i/o 1-wire input/output. pmod i reserved for future use. must be tied to gnd. suso o suspend output - buffered usb suspend state output from usb device controller. when low the usb is in an active non-suspended state, when high the usb has entered a suspended state. this is an open drain output and requires an external pullup. xi i crystal input. use a 12.0 mhz, fundamental mode, parallel resonant crystal. a 12.0 mhz cmos clock source may also be used. xo o crystal output. connect to other side of crystal 1 if used. gnd pwr ground reference and ground return for 1-wire bus. nc no connect. for factory use or reserved, do not connect to these pins. related documents this specification uses terms from and references or complies with the universal serial bus specification, which may be obtained from the usb implementers forum web site: www.usb.org. the usb specification is considered to be part of the ds2490 specification. this specification uses several terms and acronyms associated with dallas semiconductor 1-wire products and technologies. for a detailed description of i button technology and terms download the book of i button standards from the dallas semiconductor i button web site: www.ibutton.com . document organization the remainder of this document is organized into the following major sections: section summary overview device functional summary and application examples 1-wire i/f controller edge control and timing diagrams of 1-wire signals usb communication configuration model, core and vendor-specific command summaries mode commands commands used to configure 1-wire interface operational characteristics control commands commands used to control 1-wire communication command processing communication commands commands used to communicate with an attached 1-wire device device feedback technique to obtain device status information
ds2490 3 of 50 033199 usb transceiver transceiver connection requirements oscillator oscillator connection requirements suspend output suso signal operation and purpose electrical characteristics dc and ac specifications application information hw and sw application information appendix 1 control commands ? usb setup packet encoding appendix 2 communication commands - usb setup packet encoding appendix 3 mode commands - usb setup packet encoding appendix 4 usb command and command type constant codes overview the ds2490 directly interfaces a usb port to a 1-wire bus. as shown in figure 1, the ds2490 incorporates a usb physical interface, a usb device controller coupled with a 1-wire specific usb function core, and a 1-wire bus interface controller. the 1-wire interface controller shapes the slopes of the 1-wire wave-forms, applies programming pulses or strong pullup to 5v, and reads the 1-wire bus using a non-ttl threshold to maximize the noise margin for best performance on large 1-wire microlan networks. 1-wire waveform timing is accurately controlled with a crystal-based oscillator. the ds2490 also supports usb remote wakeup which enables the ds2490 based usb peripheral to send resume signaling to a suspended host system. if the remote wakeup function is enabled and the host system is in a suspended state, a 1-wire device attachment will cause the ds2490 to perform a host system wakeup and allow the 1-wire device to be serviced. ds2490 functional block diagram figure 1 usb xcvr usb device controller pwr cntl usb 1-wire function core ep fifos osc clk gen usb desc rom 1-wire i/f controller 1-wire xi vpp xo d+ d- vb vd gnd suso typical application examples of the ds2490 are shown in figure 2 (a-c). as shown in all the examples, all host control and communication with the device is accomplished over a usb communication link. a usb vendor-specific command set, as defined in this document, is used to select operational modes (mode commands), control command processing (control commands), and communicate over the 1-wire interface (communication commands). shown in figure 2 example (a) is a ds2490 based usb peripheral application. the peripheral function is a usb to 1-wire adapter and provides both usb and 1-wire i/o connections. in this example the peripheral is attached to the usb enabled host computer
ds2490 4 of 50 033199 either directly at a root port or through a usb hub. the 1-wire bus interface provided by the ds2490 supports all 1-wire devices manufactured by dallas semiconductor as well as the various 1-wire bus topologies simple multi-drop to complex microlan. example (b) and (c) in figure 2 are variations of example (a) in which the ds2490 is embedded in the host computer or a usb hub. ds2490 application examples figure 2 1-wire interface controller 1-wire communication commands sent to the ds2490 are ultimately processed by the 1-wire interface controller. one of the tasks of the interface controller is to actively shape the edges of the 1-wire communication waveforms. this speeds up the recharging of the 1-wire bus (rising edges) and reduces ringing of long lines (falling edges). the circuitry for shaping rising edges is always active. the slew rate of falling edges is actively controlled only at flexible speed and requires the parameter for slew rate control being different from its power-on default value. see the mode commands section for parameter control and power-on defaults. all rising edges the active pullup of the rising edges reduces the rise time on the 1-wire bus significantly compared to a simple resistive pullup. figure 3 shows how the ds2490 is involved in shaping a rising edge.
ds2490 5 of 50 033199 active pullup figure 3 5v 0v 1-wire bus is discharged v iapo v iapto t apuot t 1 t 2 t 3 the circuit operates as follows: at t 1 the pulldown (induced by the ds2490 or a device on the bus) ends. from this point on the 1-wire bus is pulled high by the weak pullup current i weakpu provided by the ds2490. the slope is determined by the load on the bus and the value of the pullup current. at t 2 the voltage crosses the threshold voltage v iapo . now the ds2490 switches over from the weak pullup current i weakpu to the higher current i actpu . as a consequence, the voltage on the bus now rises faster. as the voltage on the bus crosses the threshold v iapto at t 3 , a timer is started. as long as this timer is on ( t apuot ), the i actpu current will continue to flow. after the timer is expired, the ds2490 will switch back to the weak pullup current. falling edges (ds2490-initiated) whenever the ds2490 begins pulling the 1-wire bus low to initiate a time slot, for example, it first turns off the weak pullup current i weakpu . then, at regular and overdrive speed it will generate a falling edge at a slew rate of typically 15 v/s. this value is acceptable for short 1-wire busses and adequate for communication at overdrive speed. for microlan networks of more than roughly 30 meters length, flexible speed should always be used. one of the parameters that is adjustable at flexible speed is the slew rate of ds2490-initiated falling edges. the effect of the slew rate control is shown in figure 4. slew rate control figure 4 5v 0v 0.8 v t f low slew rate high slew rate pull-down begins weak pull-up ends, 1-wire bus is pulled up target for long lines: 4 0.5 s t 1 as extensive tests have shown, microlan networks at a length of up to 300 meters will perform best if the fall time t f is in the range of 4 0.5 s. this translates into a slew rate of approximately 1 v/s. this slew rate is typically achieved by selecting a pulldown slew rate parameter code of 0x4 (see mode commands). if the actual measured fall time is longer than the target value, a parameter code of 0x3 or lower should be used. if the fall time is shorter, a parameter code of 0x5 or higher should be
ds2490 6 of 50 033199 used. once determined, the value code for the pulldown slew rate control parameter should be stored in the host and always be loaded into the ds2490 after a power-on or master reset cycle. 1-wire timing diagrams this section explains the waveforms generated by the ds2490 on the 1-wire bus in detail. first the communication wave forms such as the reset/presence detect sequence and the time slots are discussed. after that follows a detailed description of the pulse function under various conditions. the wave forms generated by the ds2490 may deviate slightly from specifications found in the ?book of ds19xx i button standards? or in data sheets of 1-wire slave devices. however, the ds2490 has been designed to ensure that the timing requirements are met. 1-wire communication wave forms one of the major features of the ds2490 is that it relieves the host from generating the timing of the 1- wire signals and sampling the 1-wire bus at the appropriate times. the reset/pre sence detect sequence is shown in figure 5. this sequence is composed of four timing segments: the reset low time t rstl , the short/interrupt sampling offset t si , the presence detect sampling offset t pdt and a delay time t fill . the timing segments t si , t pdt and t fill comprise the reset high time t rsth where 1-wire slave devices assert their presence or interrupt pulse. during this time the ds2490 pulls the 1-wire bus high with its weak pullup current. the values of all timing segments for all 1-wire speed options are shown in the table. since the reset/pre sence sequence is slow compared to the time slots, the values for regular and flexible speed are the same. except for the falling edge of the presence pulse, all edges are controlled by the ds2490. the shape of the uncontrolled falling edge is determined by the capacitance of the 1-wire bus and the number, speed and sink capability of the slave devices connected. reset/presence detect figure 5 speed t rstl t si t pdt t fill t rsth regular 512 s 8 s 64 s 512 s 584 s overdrive 64 s 2 s 8 s 64 s 74 s flexible 512 s 8 s 64 s 512 s 584 s upon executing a 1-wire reset command (see communication commands), the ds2490 pulls the 1-wire bus low for t rstl and then lets it go back to 5v. the ds2490 will now wait for the short/interrupt sampling offset t si to expire and then test the voltage on the 1-wire bus to determine if there is a short or an interrupt signal. if there is no short or interrupt (as shown in the picture), the
ds2490 7 of 50 033199 ds2490 will wait for t pdt and test the voltage on the 1-wire bus for a presence pulse. regardless of the result of the presence test, the ds2490 will then wait for t fill to expire and then send the command response byte to the host. if the test for interrupt or short reveals a logic 0, the ds2490 will wait for 4096 s and then test the 1- wire bus again. if a logic 0 is detected, the 1-wire bus is shorted and the ds2490 feedback response for the 1-wire reset communication command will indicate a short detection. if a logic 1 is detected, the device will wait for t fill to expire, after which it will load the feedback response value for the 1- wire reset command with an alarming presence pulse detect value. no additional testing for a presence pulse will be done. the ds2490 will perform the short/interrupt testing as described also at overdrive speed, although interrupt signaling is only defined for regular speed. a write-1 and read data time slot is comprised of the segments t low1 , t dso and t high . during write-1 time slots, after the write-1 low time t low1 is over, the ds2490 waits for the duration of the data sample offset and then samples the voltage at the 1-wire bus to read the response. after this, the waiting time t high1 must expire before the time slot is complete. a write-0 time slot only consists of the two segments t low0 and t rec0 . if the network is large or heavily loaded, flexible speed should be selected and the write-1 low time (t low1 ) should be extended to more than 8 s to allow the 1-wire bus to completely discharge. since a large or heavily loaded network needs more time to recharge, it is also recommended to delay sampling the bus for reading. a higher data sample offset value ( t dso ) will increase the voltage margin and also provide extra energy to the slave devices when generating a long series of write-0 time slots. however, the total of t low1 + t dso should not exceed 22 s. otherwise the slave device responding may have stopped pulling the bus low when transmitting a logic 0. write 1 and read data time slot figure 6 speed t low1 t dso t high1 t slot regular 8 s 6 s 54 s 68 s overdrive 1 s 1 s 8 s 10 s flexible* 8 to 15 s 3 to 10 s 54 s 65 to 79 s *power-up defaults for flexible speed: t low1 =12s, t dso =7s
ds2490 8 of 50 033199 write 0 time slot figure 7 speed t low0 t rec0 t slot regular 62 s 6 s 68 s overdrive 7 s 3 s 10 s flexible 62 s 3 to 10 s 65 to 72 s *power-up defaults for flexible speed: t rec0 =7s pulse wave forms the pulse communication command can be used to generate either a strong pullup to 5v or 12v programming pulse. the duration of the pulses are specified with the strong pullup duration and prog pulse duration mode registers. figure 8 and figure 9 show timing of the two pulse types. for predefined pulse durations, t spu and t pp are known values, for semi-infinite and infinite durations these pulse times vary and depend on the characteristics of attached 1-wire devices and/or host computer intervention. see the mode command section for details on duration times. the processing of a pulse command is essentially the same, regardless if a strong pullup or a programming pulse is specified. as shown in the figures, at t 1 processing of the pulse command begins, at t 2 the ?pulse? ends. for eprom programming, only a single slave device should be connected to the 1-wire bus and the cable must be short, not to exceed a few meters. the slew rate of the rising and falling edge of the programming pulse (?steep slopes?) is actively controlled by ds2490 as shown in figure 9. do not attempt to generate a programming pulse with a non-eprom device on the bus; this may damage the device as well as the ds2490. in addition, a correct programming pulse can only be generated if the 12v programming voltage is available at the vpp pin of the ds2490. certain applications may require a duration for a strong pullup or programming pulse that cannot be realized using one of the predefined values (see mode commands section for values). selecting infinite duration allows the host to generate pulses of any length. as a consequence, however, the host becomes responsible to actively control the duration of the pulse. failing to do so may require a power- on reset or master reset cycle of the ds2490. for this reason, infinite duration should only be used if absolutely necessary. the halt execution when done or halt execution when idle control commands are used to terminate an infinite duration pulse. as before, processing the command is essentially the same, regardless if it is for a strong pullup or a programming pulse.
ds2490 9 of 50 033199 strong pullup to 5v, predefined duration figure 8 12v programming pulse, predefined duration figure 9 usb communication communication with the ds2490 is performed using usb standard requests, also referred to as core commands or requests in this document, and ds2490 vendor specific usb commands. all command communication with the ds2490 is performed over the default control pipe. non-command communication, including 1-wire device data i/o and ds2490 status information, occurs in a vendor- specific fashion over bulk and interrupt pipes. configuration of the ds2490 usb controller is shown in figure 10. as shown, a dallas semiconductor vendor-specific 1-wire device exists with a single 1-wire interface. the usb vendor-specific 1-wire function of the ds2490 will be implemented and controlled by the device driver at the device level of the device class hierarchy, i.e, vendor-specific commands will be directed to the device level. within the 1-wire interface, four endpoints exist to control and communicate with the device. four alternate settings of the 1-wire interface exist which correspond to different operating modes for the endpoints. endpoint and interface descriptions are summarized in the following paragraphs. the ds2490 provides usb remote wakeup capability. per the usb specification, if a device supports remote wakeup, it must also provide the ability to enable or disable the remote wakeup function. in addition, the remote wakeup feature must be disabled as the power up default or device reset state. when the remote wakeup feature is enabled, the ds2490 will send usb resume signaling to a suspended host system upon detecting a 1-wire device attachment. it then becomes the responsibility of host system software to resume operation and to determine what servicing is required for the 1-wire device.
ds2490 10 of 50 033199 usb configuration figure 10 1-wire client usb host system sw ds2490 usb 1-wire device 1-wire interface touch detection device state 1-wire data i/o ep2 ep3 ep1 usb enumeration usb control 1-wire control ep0 default pipe interrupt pipe bulk pipe bulk pipe usb physical i/f 1-wire communication 1-wire mode endpoint (ep) summary description ep0 is the endpoint for the bi-directional default control pipe. it is used for the usb enumeration process, usb core request communication, and all ds2490 specific command communication. ep1 is the endpoint for an interrupt pipe (device to host) and is used to relay ds2490 status register data and specific command execution completion and/or error information to the host. it is also used to inform the host of 1-wire device-attach detection. the polling period requested for ep1 is either 10 ms or 1 ms, depending on the alternate interface setting of the 1-wire interface. the default polling period for ep1 is 10 ms. ep2 is an endpoint for a bulk data out pipe (data from host) and is used to transmit 1-wire device data from the host to the ds2490. the information received at this endpoint will be transmitted as data on the 1-wire bus. ep3 is an endpoint for a bulk data in pipe (data to host) and is used to send data received by the ds2490 from the 1-wire bus back to the host for processing. 1-wire interface summary description the interface is the usb collection point for the four endpoints. four alternate settings exist for the 1- wire interface which correspond to different operational modes for the pipes to ep1, ep2, and ep3. as shown in table 2, the alternate settings specify different polling periods for the interrupt pipe and different maximum packet sizes for the two bulk pipes.
ds2490 11 of 50 033199 1-wire interface alternate setting summary table 2 alt setting ep1 poll interval ep2/ep3 max packet size alternate setting description 0 10ms 16 bytes long interrupt polling interval, small packet size for bulk pipes 1 10ms 64 bytes long interrupt polling interval, large packet size for bulk pipes 2 1ms 16 bytes short interrupt polling interval, small packet size for bulk pipes 3 1ms 64 bytes short interrupt polling interval, large packet size for bulk pipes endpoint feature summary table 3 endpoint # transaction type direction 1 max. packet size 0 control in/out alt i/f-0..3: 8 bytes 1 interrupt in alt i/f-0..3 32 byt es alt i/f-0: 16 bytes alt i/f-1: 64 bytes alt i/f-2: 16 bytes 2 bulk out alt i/f-3: 64 bytes alt i/f-0: 16 bytes alt i/f-1: 64 bytes alt i/f-2: 16 bytes 3 bulk in alt i/f-3: 64 bytes 1. direction in this table is in reference to the host usb core commands table 4 standard device requests target element range notes set_address device 0x01 - 0xff set_configuration device 0x00 - 0x01 1 get_configuration device 0x00 - 0x01 get_desciptor device 2 get_interface interface 0 interface 0: 0x00 - 0x03 3 set_interface interface 0 interface 0: 0x00 - 0x03 3 set_feature device 4 clear_feature device 4 get_status device, interfaces, endpoints 0-3 5, 6
ds2490 12 of 50 033199 notes: 1. the only valid configuration values are 0 and 1 for the set_configuration request. configuration value 0 corresponds to the non-configured state. 2. only the device and configuration descriptor types are supported for the get_descriptor request. 3. interface 0 is the only valid interface value for the ds2490. 4. the only valid feature selector for the command is device_remote_wakeup. 5. the ds2490 is intended, at a minimum, to be partially bus powered. remote wakeup can be enabled or disabled. get_status requests to the device will return a logic 0 for the self-powered bit field and the current state value for the remote wakeup bit. 6. there is no usb core level status information defined for interfaces. the ds2490 will always return 0 value data for get_status requests to interfaces. ds2490 vendor specific usb commands three different vendor-specific command types exist to control and communicate with the ds2490: control, communication, and mode. control commands are used to manage various device functions including the processing of communication commands, buffer clearing, and sw reset. communication commands are used for 1-wire data and command i/o. mode commands are used to establish the 1-wire operational characteristics of the ds2490 such as slew rate, low time, strong pullup, etc. control, communication and mode commands, like usb core requests, are communicated over the default control pipe at ep0. with one exception as noted below, each command and any associated parameter data are individually formatted into the 8-byte control transfer setup packet as follows: bmrequesttype brequest wvalue* windex wlength request type bit map (1 byte) command type (1 byte) command (2 bytes) command parameters (2 bytes) 0x0000 (not used) * the one exception to wvalue formatting is for the read straight communication command. this command requires three parameter bytes which exceeds the 2-byte parameter encoding space available in the windex field. for this command only, the wvalue field will be formatted as 1 command byte and 1 parameter byte. see the command description in appendix 2 for details. the bit-mapped bmrequesttype field identifies the characteristics of the usb command per chapter 9 of the usb specification. fields included in this command describe the direction of the transfer, type of request (core, class, or vendor specific) and the target of the command recipient (device, interface, or endpoint). the only variation on the bmrequesttype field for the different ds2490 vendor-specific command will be for the transfer direction: host to device, or device to host; the recipient for all commands will be the ?device?. the brequest field contains a 1-byte constant identifying which of the three supported ds2490 command types is being sent. the command constants are defined in appendix 4 and are summarized as follows: command type description control_cmd 1-wire interface control commands comm_cmd 1-wire interface communication commands mode_cmd 1-wire interface operational mode commands the 2-byte wvalue field is encoded with the specific command. for control and mode commands, the field value corresponds to a specific command constant as defined in appendix 4. for communication
ds2490 13 of 50 033199 commands, the field has additional embedded command parameters as indicated in appendix 2. the exception is the read straight command as described previously. the 2-byte windex is used to hold additional command parameter data when required by the specific command. the wlength field is used in the control transfer setup packet to specify the number of bytes to be sent during the data stage of a control transfer. the ?get comm cmds? control command is the only ds2490 command that uses the data stage of the control transfer. typically all command data is embedded in the setup stage. except for the get comm cmds, this field must be set to 0x0000. ds2490 control, communication, and mode vendor-specific command descriptions and formatting are defined in appendices 1, 2, and 3. vendor-specific commands not defined in the appendices are not supported by the ds2490 and the device will respond with a stall if an unsupported command is received. mode commands ds2490 1-wire characteristics and features (speed, durations, slew rate, etc.) are controlled with discrete mode commands and/or embedded communication command parameters. parameter values and enable/disable settings are used for characteristic control. mode settings are stored in the ds2490 state registers and can be read at any time or at the polling interval of ep1. see the section ?device feedback? for state register details. enable/disable settings are used to control three global features: strong pullup to +5v +12v eprom programming pulse dynamic 1-wire bus communication speed change through a communication command the setting for these three global controls are accessible only through mode commands; the features are either enabled or disabled with the appropriate mode command. specific communication commands exist which can be used to issue a strong pullup, programming pulse, or speed change. when the corresponding setting is enabled the feature is usable as part of a communication command when disabled the feature is not usable. parameter values and codes are used to specify and control 1-wire bus characteristics: 1-wire bus communication speed +5v strong pullup duration +12v programming pulse duration pulldown slew rate write-1 low time data sample offset/ write-0 recovery time these six settings are controllable with discrete mode commands or as embedded command/parameter values in communications commands. as listed in table 5 and summarized previously, there are eight mode commands. the usb control transfer setup packet coding to transmit these commands is detailed in appendix 3. mode commands are immediately processed by the ds2490 when they are received. the ds2490 power-on default values for
ds2490 14 of 50 033199 these parameters are as listed in table 10. each command and parameter control is detailed in the following paragraphs. mode command set summary table 5 command function enable pulse enable/disable 1-wire strong pullup pulse to 5v and/or +12v programming pulse. enable speed change enable/disable dynamic change of the 1-wire speed through a communication command. 1-wire speed communication speed of the 1-wire bus. strong pullup duration duration of 1-wire strong pullup. pulldown slew rate slew rate of 1-wire pulldown. prog pulse duration duration of 1-wire vpp eprom programming pulse. write-1 low time duration of 1-wire write-1 low time. dsow0 recovery time recovery time for the 1-wire data sample offset / write-0 transaction. mode command set descriptions: enable pulse ? this command is used to enable or disable a 1-wire strong pullup pulse to 5v and/or +12v eprom programming pulse. two bit positions in the parameter byte are used to control the enabled/disabled state for each pulse type. the specific pulse is enabled when the respective bit is set to a 1 and disabled when set to a 0. the ds2490 power-up default state for both strong pullup and programming pulse is disabled. enable speed change - this command is used to enable or disable a 1-wire communication speed change. enabled when a true parameter value is passed with the command, disabled with a false. the ds2490 power-up default state for speed change is disabled. 1-wire speed - this command is used to set the speed of 1-wire communication; three settings are possible. the parameter codes to select the desired or required speed are as listed in table 6. as shown, speed codes 0x3..0xf are undefined. the ds2490 decodes the 3 lsbs of the 1-wire speed code. sending a code other than the defined values in table 6 will result in undefined behavior. the ds2490 power-up default communication speed is regular. 1-wire bus speed codes table 6 code speed data rate 0x0 regular 65 m s time slot (15.4 kbps) 0x1 flexible 65- 72 m s time slot (13.9 to 15.4 kbps) 0x2 overdrive 10 m s time slot (100 kbps) 0x3..0xf reserved undefined
ds2490 15 of 50 033199 strong pullup duration - this command is used to set the time duration of a 1-wire strong pullup. the time is controlled with an unsigned 8-bit binary number between 0x00 and 0xfe which specifies the duration in multiples of 16 ms. a value of 0x01 specifies 16 ms, 0x02 equals 32 ms, etc. a value of 0x00 specifies infinite duration. to terminate an infinite duration pullup use either the halt execution when done or halt execution when idle control commands as described in appendix 1. a value of 0xff specifies semi-indefinite duration. for a semi-indefinite duration, the strong pullup will end as soon as the current has dropped below 500 a 50%. the current is sensed every 16 ms. the ds2490 power-up default strong pullup duration register value is 512 ms. prog pulse duration - this command is used to set the time duration of a 1-wire programming pulse. the time is controlled with a an unsigned 8-bit binary number between 0x00 and 0xfe specifying the duration in multiples of 8 s. a value of 0x00 stands for infinite duration. to terminate an infinite duration programming pulse use the halt execution when done or halt execution when idle command. a value of 0xff stands for semi-indefinite duration. the pulse will end as soon as the current has dropped below 500 a 50%. the current is sensed every 8 s. the pulse will also terminate if the voltage sensed on the 1-wire bus remains too low. the ds2490 power-up default strong pullup duration register value is 512 s. pulldown slew rate - this command is used to select the pulldown slew rate for 1-wire bus flexible speed operation; eight pulldown slew rates are possible. the parameter codes to select the desired or required slew rate are as listed in table 7. the slew rate numbers in the table represent typical values. the pulldown slew rate for regular speed is 0.83 v/ m s and for overdrive speeds it is 15 v/ m s. the ds2490 decodes the 3 lsbs of the slew rate code. sending a code other than the defined values in table 7 will result in undefined behavior. the ds2490 pulldown slew rate power-up default value for flexible speed is 0.83 v/ m s. flexible speed pulldown slew rate codes table 7 code pulldown slew rate 0x0 15 v/ m s 0x1 2.20 v/ m s 0x2 1.65 v/ m s 0x3 1.37 v/ m s 0x4 1.10 v/ m s 0x5 0.83 v/ m s 0x6 0.70 v/ m s 0x7 0.55 v/ m s 0x8..0xf reserved write-1 low time - this command is used to select the write-1 low time for 1-wire bus flexible speed operation; eight write-1 low time durations are possible. the parameter codes to select the desired or required low time are as listed in table 8. the low time numbers in the table represent exact values. the write-1 low time for regular speed is 8 m s, at overdrive speed it is 1 m s. the ds2490 decodes the 3 lsbs of the low time code. sending a code other than the defined values in table 8 will result in undefined behavior. the ds2490 write-1 low time power-up default value for flexible speed is 12 m s.
ds2490 16 of 50 033199 flexible speed write-1 low time codes table 8 code write-1 low time 0x0 8 m s 0x1 9 m s 0x2 10 m s 0x3 11 m s 0x4 12 m s 0x5 13 m s 0x6 14 m s 0x7 15 m s 0x8..0xf reserved dsow0 recovery time - this command is used to select the data sample offset / write-0 recovery time (dso/w0r) for 1-wire bus flexible speed operation; eight dso/w0r times are possible. the parameter codes to select the desired or required recovery time are as listed in table 9. the numbers in the table represent exact values. the dso/w0r time for regular speed is 3 m s, for overdrive speed the data sample offset is 1 m s and the write-0 recovery time is 3 m s. the ds2490 decodes the 3 lsbs of the dso/w0r code. sending a code other than the defined values in table 9 will result in undefined behavior. the ds2490 dso/w0r power-up default value for flexible speed is 7 m s. flexible speed dso/ w0r time codes table 9 code dso/w0r time 0x0 3 m s 0x1 4 m s 0x2 5 m s 0x3 6 m s 0x4 7 m s 0x5 8 m s 0x6 9 m s 0x7 10 m s 0x8..0xf reserved power-on default mode values table 10 summarizes the power-up default values for the various ds2490 mode registers. note that the power-up default communication speed is regular and several of the values listed in table 10 are specific to flexible speed operation. to change a value the appropriate mode or communication command must be sent to the device.
ds2490 17 of 50 033199 1-wire power-on default modes table 10 setting/parameter power-on default value strong pullup to 5v false 12v programming pulse false dynamic speed change false 1-wire bus communication speed 0x0 (regular speed, ~16 kbps) +5v strong pullup duration 0x20 (512 ms) +12v programming pulse duration 0x40 (512 m s) pulldown slew rate control 0x5 (0.83 v/ m s) write-1 low time 0x4 (12 m s) data sample offset / write-0 recovery time 0x4 (7 m s) control commands ds2490 control commands are used to control the processing of communication commands/data and can also be used to issue a device reset. as listed in table 11 there are 11 control commands. the usb control transfer setup packet coding to transmit these commands is detailed in appendix 1. like mode commands, control commands are immediately processed by the ds2490 when they are received.
ds2490 18 of 50 033199 control command set summary table 11 command function reset device perform a hardware reset. start execution start execution of communication commands. resume execution resume execution of communication commands. halt execution when idle halt communication command execution when the 1-wire bus is idle. halt execution when done halt further communication command execution when the current command execution completes. cancel command terminate communication command execution. cancel macro terminate communication command macro execution. flush comm cmds clear unexecuted communication commands from the command buffer. flush data rcv buffer clear the data receive buffer (data from a 1-wire device). flush data xmt buffer clear the data transmit buffer (data to a 1-wire device). get comm cmds retrieve unexecuted communication commands from the command buffer. control command set descriptions: reset device ?this command performs a hardware reset equivalent to the power-on reset. this includes clearing all endpoint buffers and loading the mode control registers with their default values. start execution ? this command starts execution of communication commands. this command is also required to start the execution of communication commands with an im (immediate execution control) bit set to logic 0. resume execution ? this command is used to resume execution of a communication command that was halted with either of the halt execution commands. halt execution when idle ? this command is used to halt the execution of the current communication command after the 1-wire bus has returned to the idle state. further communication command processing is stopped until a resume execution command is received. this command, or the halt execution when done command, is also used to terminate a strong pullup or programming pulse of semi-infinite or infinite duration. halt execution when done ? this command is used to halt the execution of a communication command after the current command execution is complete. further communication command processing is stopped until a resume execution command is received. this command, or the halt execution when idle command, is also used to terminate a strong pullup or programming pulse of semi-infinite or infinite duration. cancel command ? this command is used to terminate the communication command that is currently being executed and place the 1-wire bus in an idle state. further communication command processing is stopped until a start execution command is received. the canceled communication command cannot be resumed. the ds2490 must be in a halted state before the cancel command command can be processed, if not, the command will be ignored.
ds2490 19 of 50 033199 cancel macro - this command is used to terminate any activity on the 1-wire bus without completing the communication command or macro that is currently being executed and to place the 1- wire bus in an idle state. the command processing pointer is positioned at the communication command that follows the set of commands that make up the macro. further communication command processing is stopped until a start execution command is received. the ds2490 must be in a halted state before the cancel macro command can be processed; if not, the command will be ignored. flush comm cmds - this command is used to clear all unexecuted communication commands from the command fifo. the ds2490 must be in a halted state before the flush comm cmds command can be processed. flush data rcv buffer - this command is used to clear ep3 receive data fifo (data from 1- wire device). the ds2490 must be in a halted state before the flush data rcv buffer command can be processed. flush data xmt buffer - this command is used to clear ep2 transmit data fifo (data to 1-wire device). the ds2490 must be in a halted state before the flush data xmt buffer command can be processed. get comm cmds - this command is used to retrieve unexecuted communication commands and parameters from the command fifo. the ds2490 must be in a halted state before the get comm cmds command can be processed. unexecuted commands are returned over ep0 in the control transfer data phase. host software is responsible for determining the number of command/parameter bytes to be returned and specifying the value in the wlength field of the control transfer setup packet. commands/parameters are deleted from the fifo as they are transmitted to the host; the command pointer used with the fifo is updated as values are read. any commands/parameters that are not transferred remain in the fifo and will be processed when command execution resumes. if the wlength value passed is larger than the number of command/parameter bytes, the ds2490 will terminate the control transfer with a short data packet. communication commands communication commands are used to communicate with and control an attached 1-wire device(s). there are 16 commands as summarized in table 12. communication commands also contain embedded command bits for conditional control or additional functionality. appendix 2 details the embedded command bit purpose/formatting as well as the control transfer setup packet coding to transmit the command/parameter data to the ds2490. unlike mode and control commands, communication command processing is controlled by host software by combining embedded command bits with control commands. for example, a command macro form is supported in which several communication commands and parameter data are sent/buffered in the ds2490 and then processed as a group. embedded command bit icp is used to create macro command sets. also unlike mode and control commands, several forms of communication command monitoring exists for host software to track processing progress. if an error condition is detected during command processing and the embedded icp bit is set to the proper state or the error escape command is used, a result register value will be generated with an error indication. note that a result register value will not be generated if no error condition is detected. communication command buffer (fifo) status and 1-wire data transmit/received buffers (ep2/3 fifos) status can also be
ds2490 20 of 50 033199 monitored via the state registers. see the section ?device feedback? for details on command monitoring. communication command set summary table 12 command function error escape escape from macro on error. set duration change duration of strong pullup or programming pulse. pulse perform strong pullup or generate programming pulse. 1-wire reset generate 1-wire reset pulse. bit i/o 1-wire single data bit i/o. byte i/o 1-wire data byte i/o. block i/o 1-wire data block i/o. match access address a device on the 1-wire bus. read straight transmit a data preamble and read back data. do & release control crytpo i button cpu activity. set path activate a series of couplers that provide access to a target 1-wire device. write sram page write data to the scratchpad of a 1-wire sram device. write eprom write data directly to the data or status memory of a 1-wire eprom device. read crc prot page read crc protected pages of a 1-wire eprom device or tamper- detect bytes and counter value of monetary i buttons. read redirect page w/crc read a single page of data and check the crc. follow page redirections if set. search access access a device using the search rom command or identifying devices on the active segments of a microlan. communication command set descriptions: error escape - this command can be placed between commands in a macro. if an error condition occurred when executing the communication command prior to the error escape command, further communication command processing will be stopped and a result register processing error indication byte will be loaded in the feedback data buffer to be sent to the host. (see the section ?device feedback? and table 17 for a result register description.) if an error condition was detected, host intervention is required to recover from the error escape state. if no error occurred, the command is processed as a no operation. embedded command bit rst enables a 1-wire reset before the command executes. note : the error esacape command should not be used as the last command of a macro. nor should the error escape command be used between individual communication commands; it should only be used within a macro command set. if this requirement is violated and the error escape command is used as the last macro command or between individual instructions, the potential exists for the maco or individual instruction following the error escape to be skipped and purged from command fifos. additionally, it is not necessary since, by requirement, the last macro command must have it?s embedded icp bit set to (icp=1, see appendix 2 for command coding); this will force error reporting.
ds2490 21 of 50 033199 command parameters: none. ep2 data: none. ep3 data: none. result register: code condition eos, rdp, crc, cmp, vpp, app, sh, nrs error during execution of the previous command. none. no error occurred during execution of the previous command. set duration - this command changes the state register pulse duration value for either the +12v programming pulse or strong pullup. the new duration value is loaded into the duration register specified by the type embedded command parameter as detailed in appendix 2. see section ?mode commands? for duration parameter value setting. the duration values can alternatively be changed using a mode command. note : an infinite duration pulse is terminated by using either of the halt execution control commands. to resume 1-wire activity after the termination, use the resume execution control command. command parameters: 1 byte specifying the new duration. ep2 data: none, this command gets its input data as a command parameter. ep3 data: none. result register: none, this command returns no error code. pulse - this command is used to temporarily pull the 1-wire bus to +12v in order to program an eprom device or to generate a strong pullup to 5v in order to provide extra power for an attached i button device, e.g., temperature sensor or crypto i button. the embedded type parameter bit specifies the pulse type. the pulse duration is determined by the value in the respective mode register, programming pulse or strong pullup. the 12vp bit in the device status flags (bit2) is used to determine whether +12v vpp programming voltage is present, see table 15. command parameters: none. ep2 data: none. ep3 data: none. result register: code condition vpp. icp=0 and no +12v was sensed. non. otherwise. 1-wire reset - this command is used to generate a reset pulse on the 1-wire bus and to optionally change the 1-wire speed. the new speed will take effect only if the embedded command bit se is set to 1. when the 1-wire reset is sent after an overdrive skip rom command, se must be 1 and the new speed must be 0x02. see mode control section for additional communication speed information. to switch back to regular speed, set se=1 and the new speed parameter to 0x00 (regular) or 0x01 (flexible). command parameters: 1 byte specifying new speed after the reset. ep2 data: none.
ds2490 22 of 50 033199 ep3 data: none. result register: code condition sh, nrs. icp=0 and an abnormal condition. none. otherwise. bit i/o - this command generates a single time slot on the 1-wire bus and reads back the response. data bit d3 (d) of command byte 1 specifies the value to be written to the 1-wire bus. this time slot may optionally be followed by a strong pullup using embedded command bits spu and cib. with cib=1, a requested strong pullup will only occur if the read-back revealed a 0. data is returned to the host only if the embedded command bit icp=0. if icp=0, the bit read from the 1-wire device is stored in the ep3 fifo and is read by the host using an ep3 bulk transaction. the bit read back is stored in the data byte lsb as shown in table 13. command parameters: none. ep2 data: none, this command gets its input data as a command parameter. ep3 data: length description if icp=0: 1 byte bit read back from the 1-wire device. if icp=1: none. no data is returned. result register: none, this command returns no error code. bit i/o read back byte table 13 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 0 0 0 0 0 0 0 d byte i/o - this command accomplishes a direct 1-wire write and read with optional strong pullup after the last bit of the byte. the optional strong pullup is controlled using embedded command bit spu. for a write sequence, the data byte to be written is included in the command setup packet as shown in appendix 2. for a read sequence the setup packet data byte value is set to 0xff. data is returned to the host only if the embedded command bit icp=0. if icp=0, the byte read from the 1-wire device is stored in the ep3 fifo and is read by the host using a ep3 bulk transaction. command parameters: 1 byte: data byte to be sent to the 1-wire bus. to read only, the byte should be 0xff. ep2 data: none, this command gets its input data as a command parameter. ep3 data: length description if icp=0: 1 byte byte read back from the 1-wire device. if icp=1: none no data is returned. result register: none, this command returns no error code. block i/o - this command accomplishes a direct 1-wire write or read with optional strong pullup after the last byte of the block. the optional strong pullup is controlled using embedded command bit spu. embedded command bit rst enables a 1-wire reset before the command executes. to accomplish a read function all input data should be 0xff, otherwise the data read from the 1-wire bus will be masked. for a block write sequence the ep2 fifo must be pre-filled with data before command execution. additionally, for block sizes greater then the fifo size, the fifo content status must be monitored by host sw so that additional data can be sent to the fifo when necessary. a similar ep3 fifo content monitoring requirement exists for block read sequences. during a block read the number of
ds2490 23 of 50 033199 bytes loaded into the ep3 fifo must be monitored so that the data can be read before the fifo overflows. see the hw/sw application recommendation section for additional details. command parameters: 2 bytes specifying block size. ep2 data: length description same as block size data block to be written to the 1-wire device. ep3 data: length description same as block size data block read from the 1-wire device. result register: none, this command returns no error code. match access - this command is used to address a device on the active section of the 1-wire bus using the match rom or overdrive match command code. the ep2 fifo must be pre-filled with the 8 bytes target rom id before command execution. embedded command bit rst enables a 1-wire reset before the command executes, and embedded command bit se enables a 1-wire speed change that takes effect before the command executes. command parameters: 2 bytes: match command byte, new 1-wire speed byte (optional). ep2 data: length description 8 bytes rom id of the device to be accessed. ep3 data: none result register: none, this command returns no error code. read straight - this command transmits a user-specified preamble of data to the 1-wire bus and then reads back as many bytes as specified. the preamble typically consists of a 1-wire command code followed by ta1 and ta2. it is possible to include a match rom command and rom id in the preamble to also address a device at the current speed. this command can also be used to copy the scratchpad or disconnect a path. embedded command bit rst enables a 1-wire reset before the command executes. the ep2 fifo must be pre-filled with preamble data before command execution. additionally, for preamble sizes greater then the fifo size, the fifo content status must be monitored by host sw so that additional data can be sent to the fifo when necessary. a similar ep3 fifo content monitoring requirement exists for the block read. during a block read the number of bytes loaded into the ep3 fifo must be monitored so that the data can be read before the fifo overflows. see the hw/sw application recommendation section for additional details. command parameters: 3 bytes: 2-byte parameter specifying block read size, byte specifying preamble size. ep2 data: length description same as preamble size preamble data to be written to the 1-wire device. ep3 data: length description same as block size data block read from the 1-wire device. result register: none, this command returns no error code. do & release - this command is typically used to control the activity of the cpu of the crypto i button, which requires a release sequence. this command can also be used to read from or write to the i/o buffer or status register of the crypto i button. a short preamble (3 bytes) consists of a 1-wire
ds2490 24 of 50 033199 command code followed by the release sequence. a four-byte preamble with embedded command bit r = 1 consists of a 1-wire command code followed by length byte and the release sequence. a 4-byte preamble with embedded command bit r = 0 consists of a 1-wire command code followed by a status byte and the release sequence. the long preamble (minimum 5 bytes, embedded command bit r = 0) consists of a 1-wire command, a length byte, data bytes and the release sequence. in this case the length byte indicates the total number of bytes between the length byte and release sequence. the least significant byte of the release sequence is transmitted first. embedded command bit spu must be 1 when trying to run (start, continue) the cpu of the crypto i button. in all other cases, spu should be 0. additionally, embedded command bit f can be used to clear the communication command buffer and ep2, 3 fifos if an error occurs during execution of the command. the ep2 fifo must be pre-filled with preamble data before command execution. additionally, for preamble sizes greater then the fifo size, the fifo content status must be monitored by host sw so that additional data can be sent to the fifo when necessary. a similar ep3 fifo content monitoring requirement exists for the block read. during a block read the number of bytes loaded into the ep3 fifo must be monitored so that the data can be read before the fifo overflows. see the hw/sw application recommendation section for additional details. command parameters: 1 byte specifying preamble size. ep2 data: length description same as preamble size preamble data to be written to the 1-wire device. ep3 data: length description if r=1 and preamble size 3 4: as specified in the second byte of the preamble data read from the 1-wire device. if r=0: none no data is returned (this is a write application). result register: code condition crc, cmp icp=0: bad crc or the release sequence was not accepted. set path - this command is used to activate a series of couplers that finally provide the access to the target 1-wire device. embedded command bit rst enables a 1-wire reset before the command executes. additionally, embedded command bit f can be used to clear the communication command buffer and ep2,3 fifos if an error occurs during execution of the command. the ep2 fifo must be pre-filled with coupler data before command execution. additionally, for coupler data sizes greater then the ep2 fifo size, the fifo content status must be monitored by host sw so that additional data can be sent to the fifo when necessary. upon completion of command execution, the ep3 fifo is loaded with a 1-byte value that indicates the number of couplers activated. see the hw/sw application recommendation section for additional details. an nrs error code is an indication that there was no presence pulse on the branch that was to be connected.
ds2490 25 of 50 033199 command parameters: 1 byte specifying number of couplers that need to be activated to set-up the path to the target device. ep2 data: length description 9 bytes per level 8 bytes rom id of the coupler to be activated followed by the smart-on command code for either the main or auxiliary 1-wire coupler output. ep3 data: length description 1 byte number of couplers successfully activated; should be the same as the number of levels. result register: code condition cmp, sh, nrs icp=0 and an error condition. none otherwise. write sram page - this command is used to write data to the scratchad of an sram device and optionally check the crc. to copy the data to its final memory location, it is required to send the read straight command with a ?copy scratchpad? preamble and a 0 block size. embedded command bit dt=1 activates the crc16 generator. this command is also applicable to the write ipr function of the crypto i button if embedded command bit cib=1. to write a partial page the page size parameter and the target address need to be set accordingly. the ep2 fifo must be pre-filled with preamble and sram data before command execution. additionally, for data page sizes greater then the ep2 fifo size, the fifo content status must be monitored by host sw so that additional data can be sent to the fifo when necessary. see the hw/sw application recommendation section for additional details. command parameters: 1 byte specifying page size. this specifies the number of bytes to be sent to the 1-wire device following a 2- or 3-byte preamble. this number is typically identical to the page size; a value of 0x00 indicates a 256-byte page. ep2 data: length description if cib=0: 3-bytes + page size preamble and data bytes to be sent to the 1-wire sram device. 3-byte preamble: 1-wire command code, ta1, ta2 (typical). if cib=1: 2-bytes + page size preamble and data bytes to be sent to the 1-wire sram device. 2-byte preamble: 1-wire command code, length information. ep3 data: none result register: code condition crc icp=0 and an error condition (only if dt=1). none otherwise. write eprom - this command is used to write data directly to the data or status memory of a 1-wire eprom device. if embedded command bit dt=1, the crc16 generator is selected; if dt=0, crc8 is used. embedded command bit z controls the method used for comparison of the data written to the 1- wire device. additionally, embedded command bit f can be used to clear the communication command buffer and ep2, 3 fifos if an error occurs during execution of the command. the ep2 fifo must be pre-filled with preamble and eprom data before command execution. additionally, for data block sizes greater then the ep2 fifo size, the fifo content status must be monitored by host sw so that additional
ds2490 26 of 50 033199 data can be sent to the fifo when necessary. see the hw/sw application recommendation section for additional details. command parameters: 2 bytes specifying block size. ep2 data: length 3-bytes + block size preamble and data bytes to be sent to the 1-wire eprom device. 3-byte preamble: 1-wire command code, ta1, ta2 (typical). ep3 data: none result register: code condition crc, cmp, vpp icp=0 and an error condition. read crc prot page - this command is used to read one or multiple crc-protected pages of eprom devices and to read tamper-detect bytes and counter value of monetary i buttons. if embedded command bit dt=1, the crc16 generator is selected; if dt=0, crc8 is used. embedded command bit cib is used to specify either a 2- or 3-byte read preamble. additionally, embedded command bit f can be used to clear the communication command buffer and ep2, 3 fifos if an error occurs during execution of the command. the command can also be used to read a single partial page up to the end of that page and reading the pios of a ds2407. this command is also applicable to the read ipr function of the crypto i button if cib=1. the ep2 fifo must be pre-filled with preamble data before command execution. to prevent overflow, the ep3 fifo must be monitored (and read if necessary) during command execution if reading more data than the size of the ep3 fifo. see the hw/sw application recommendation section for additional details. command parameters: 2 bytes: 1 byte page size, 1 byte number of pages. page size byte indicates the number of bytes that are considered a page; typical is 32 decimal for data memory, 8 for status memory, and 40 decimal for monetary i buttons. a page size of 0x00 indicates a 256-byte page. ep2 data: length if cib=0: 3-bytes 3-byte preamble: 1-wire command code, ta1, ta2 (typical). if cib=1: 2-bytes 2-byte preamble: 1-wire command code, length information. ep3 data: length description (page size x number of pages) data read from the 1-wire device.. result register: code condition crc icp=0 and an error condition. read redirect page w/crc - this command is used to read a single page of data and check the crc. if the page is not redirected, the host will receive the page number and all its data. if the page is redirected and embedded command bit ch=1 the device will follow the trail of redirections until a page is found that is not redirected. when found, the host will receive the page number and all data of that particular page. if ch = 0 and the first read attempt reveals a redirection the host will only receive the number of the page the addressed page is redirected to. reading starts at a page boundary. additionally, embedded command bit f can be used to clear the communication command buffer and ep2, 3 fifos if an error occurs during execution of the command. an nrs error code is an indication of an infinite loop.
ds2490 27 of 50 033199 the ep2 fifo must be pre-filled with rom id and command code data before command execution. to prevent overflow, the ep3 fifo must be monitored (and read if necessary) during command execution if reading more data than the size of the ep3 fifo. see the hw/sw application recommendation section for additional details. command parameters: 2 bytes: 1 byte page size, 1 byte page address. page size byte indicates the number of bytes that are considered a page; typical is 32 decimal for data memory, 8 for status memory, and 40 decimal for monetary i buttons. a page size of 0x00 indicates a 256-byte page. the page address specifies the page number to be used for the first read attempt. ep2 data: length 9 bytes 8 bytes rom id of the 1-wire device to be accessed followed by the 1-wire command code for ?extended read memory?. ep3 data: length description if ch=1 or page is not redirected: 1 byte + page size page number and contents of the page. if ch=0 and page is redirected: 1 byte number of the page the addressed page is redirected to. result register: code condition rdp, crc, nrs icp=0 and an error condition. search access - the search access command is used to either access a device using the search rom command or to identify the devices on the active segments of a microlan. embedded command bit sm is used to specify the type of search. embedded command bit rts is used to control discrepancy information reporting. additionally, embedded command bit f can be used to clear the communication command buffer and ep2, 3 fifos if an error occurs during execution of the command. an nrs error code indicates that there was no response on at least one of the 64 bits of the rom search. the ep2 fifo must be pre-filled with rom id data before command execution. to prevent overflow, the ep3 fifo must be monitored (and read if necessary) during command execution if returning more data than the size of the ep3 fifo. see the hw/sw application recommendation section for additional details.
ds2490 28 of 50 033199 command parameters: 2 bytes: 1 byte 1-wire command, 1 byte number of devices. the 1- wire command is a valid command for addressing a 1-wire device. the number of devices byte specifies the maximum number of devices to be discovered in a single command call. a value of 0x00 indicates that all devices on the microlan are to be discovered. ep2 data: length 8 bytes rom id of the 1-wire device to be accessed (sm=0) or rom id with which to start the search (sm=1). ep3 data: length description if sm=0: none no data is returned. if sm=1: varies, blocks of 8 bytes. rom ids of the devices discovered followed by 8 bytes discrepancy information (if rts=1 and the numbers of devices on the microlan is higher than specified in the second parameter. result register: code condition eos, nrs icp=0 and an error condition.
ds2490 29 of 50 033199 device feedback ds2490 state and result feedback are provided to the host over the ep1 interrupt pipe. the host interrupt polling period for ep1 transfers is controlled by the alternate setting of the 1-wire usb interface as described in the section: 1-wire interface summary description. as shown in table 14, up to 32 bytes of feedback data are returned. as a minimum, 16 bytes of state register data will be delivered at each polling interval (or usb in transaction to ep1); the position and definition of these data values are listed in table 15. in addition, as shown in table 16, between 0 and 16 extra bytes of result register data will be delivered which could contain communication command error data or a 1-wire device detect byte. if there are less than 32 bytes of result and state register data to return, the ds2490 will terminate the in transaction with a short or zero data packet. data is loaded into the result register buffer if a communication command error occurs or upon detection of a 1-wire device attachment. there is no defined offset position for data values in this buffer. knowledge of communication command ordering sent to the ds2490 must be maintained on the host to properly interpret the returned data values. in addition, a parse of the data is required to determine whether or not a 1-wire detect value is included; the value of the 1-wire detect byte is unique. table 17 defines the 1-wire detect byte and data values that result from communication command processing. interrupt transfer data summary table 14 offset data 0x00 - 0x0f state registers 0x10 ? 0x1f* result registers * the number of result resigter values will vary depending on error conditions encountered while processing communication commands or whether a 1-wire device was detected.
ds2490 30 of 50 033199 ds2490 state registers table 15 description offset data enable flags 0x00 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 -- -- -- -- -- spce prge spue spue if set to 1 the strong pullup to 5v is enabled, if set to 0 it is disabled. prge if set to 1 a 12v programming pulse is enabled, if set to 0 it is disabled. spce if set to 1 a dynamic 1-wire bus speed change through a communication command is enabled, if set to 0 it is disabled. bit 3..7 these bits are reserved. 1-wire speed 0x01 current 1-wire bus speed code strong pullup duration 0x02 current pullup duration programming pulse duration 0x03 current programming pulse duration pulldown slew rate control 0x04 current pulldown slew rate code write-1 low time 0x05 current write-1 low time code data sample offset / write-0 recovery time 0x06 current data sample offset/ write-0 recovery time code reserved (test register) 0x07 device status flags 0x08 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 -- -- idle halt pmod 12vp prga spua bit definitions: spua if set to 1 the strong pullup to 5v is currently active, if set to 0 it is inactive. prga if set to 1 a 12v programming pulse is currently being generated, if set to 0 it is not. 12vp if set to 1 the external 12v programming voltage is present, if set to 0 it is not present. pmod if set to 1 the ds2490 is powered from usb and external sources, if set to 0 all ds2490 power is provided from usb. halt if set to 1 the ds2490 is currently halted, if set to 0 the device is not halted. idle if set to 1 the ds2490 is currently idle, if set to 0 the device is not idle. bit 6..7: reserved communication command, byte 1 0x09 communication command currently being processed. if the device is idle a register value of 0x00 is sent. communication command, byte 2 0x0a communication command currently being processed. if the device is idle a register value of 0x00 is sent.
ds2490 31 of 50 033199 description offset data communication command buffer status 0x0b number of data bytes currently contained in the 16-byte fifo used to hold communication commands. 1-wire data out buffer status 0x0c number of data bytes currently contained in the 128-byte fifo used to write data to the 1-wire bus. 1-wire data in buffer status 0x0d number of data bytes currently contained in the 128-byte command fifo used to read data from the 1-wire bus. reserved (test register) 0x0e reserved reserved (test register) 0x0f reserved ds2490 result registers table 16 offset 1,2 data 0x10 value 0x11 value ? ? 0x1f value notes: 1. since result registers follow state registers for interrupt transfers, the register offset starting value shown in table 16 for result registers follows the last value of table 15 state registers. 2. the number of result register bytes returned will vary depending on the number of communication command error conditions encountered or whether an i button device was attached/detected.
ds2490 32 of 50 033199 ds2490 result register value definition table 17 data value description data 1-wire device detect byte 0xa5 communication command error result bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 eos rdp crc cmp vpp app sh nrs bit definitions: eos a value of 1 indicates that a search access with sm=1 ended sooner than expected reporting less rom ids than specified in the ?number of devices? parameter. rdp a value of 1 indicates that a read redirect page with/crc encountered a page that is redirected. crc a value of 1 indicates that a crc error occurred when executing one of the following commands: write sram page, write eprom, read crc prot page, or read redirect page w/crc. cmp a value of 1 indicates that there was an error when reading the confirmation byte with a set path command or that the write eprom command did not program successfully. vpp a value of 1 indicates that during a pulse with type=1 or write eprom command the 12v programming pulse was not seen on the 1-wire bus; this could indicate that there were other devices on the bus that clamped the voltage to a value lower than vpp or that the programming pulse was disabled with a mode command. app a value of 1 indicates that a 1-wire reset revealed an alarming presence pulse. sh a value of 1 indicates that a 1-wire reset revealed a short to the 1-wire bus or the set path command could not successfully connect a branch due to a short. nrs a value of 1 indicates that a 1-wire reset did not reveal a presence pulse or the set path command did not get a presence pulse from the branch that was to be connected. a value of 0 in any of these fields indicates that the error condition was not detected. usb transceiver integrated within the ds2490 is a usb-compliant bus transceiver. to comply with usb cable termination requirements, resistors external to the ds2490 must be installed as shown in figure 11. the 24-ohm, 1% tolerance resistors are necessary to bring the total steady state resistance of each driver to the 28-43 ohm range required by the usb core specification. the 1.5 kohm pullup resistor is required to
ds2490 33 of 50 033199 identify the ds2490 as a high speed usb device to the up-stream hub. the 33 pf capacitors are optional but are useful for edge rate control and for bypassing high frequency energy to ground for emi reduction purposes. usb transceiver termination figure 11 usb transceiver 24 w , 1% 24 w , 1% ds2490 d+ d- 1.5k w 5% vb (vb = 3.3v + 10%) to/from high speed usb cable 33pf 33pf suspend output suspend output signal ( suso ) operation is a function of both the usb device state of the ds2490 (configured or unconfigured) and the usb suspend state. a truth table for signal operation is listed in table 18. this signal could be used stand-alone or combined with other external signals to power down circuitry external to the ds2490, such as power sources. the suso signal is an open drain output and requires an external pullup to a positive supply no greater than 6.0v. suspend output operation table 18 device state suspend state suso unconfigured don?t care high configured not suspended low configured suspended high oscillator the ds2490 requires a single 12.0 mhz crystal or crystal oscillator clock source to operate. crystals or cmos crystal oscillators may be used to provide clock sources. for crystals, use parallel resonant, fundamental mode with a cl specification between 10 pf and 20 pf at the required frequency. parallel loading capacitors with a value of approximately twice cl are also required. the connection scheme shown in figure 12 should be used. for external cmos crystal oscillators, make a connection directly to the ds2490 xi input. the xo output must be left floating for this arrangement. oscillator connection figure 12 ds2490 xi xo 33 p f 33 p f 12 mhz
ds2490 34 of 50 033199 absolute maximum ratings* voltage on any pin relative to ground -0.5v to +7.0v operating temperature 0 o c to +70 o c storage temperature -55 o c to +125 o c soldering temperature 260 o c for 10 seconds ? this is a stress rating only and functional operation of the device at these or any other conditions abo ve those indicated in the operation sections of this specification is not implied. exposure to absolute maximum rating conditions for extended periods of time may affect reliability. recommended dc operating conditions parameter symbol min typ max units notes usb i/f supply voltage vb 3.0 3.3 3.6 v 1, 3 digital supply voltage vd 4.4 5.0 5.5 v 1, 3 eprom programming supply voltage (programming supported) vpp 11.75 12.0 12.25 v 1, 3 eprom programming supply voltage (programming not supported) vpp 4.4 5.0 5.5 v 1, 2, 3 input logic 0 vil -0.3 0.3 v 1 input logic 1 vih 2.8 vd + 0.3 v 1 operating temperature ta 0 25 70 o c notes: 1. voltage referenced to ground. 2. when eprom programming is not supported vpp must be tied to vd. 3. during device power-up, the supply application sequence order must be vd, vpp, vb. dc electrical characteristics ta: 0 o c - 70 o c vd: 4.4v - 5.5v, vb:3.0v - 3.6v parameter symbol min typ max units notes vd operating current i d tbd ma 4 vb operating current i b tbd ma 4 idle current on vpp i pp 20 a 1 active pullup timer threshold v iapto vd-1.4 vd-1.1 v active pullup on threshold v iapo 0.95 1.2 v 1-wire input high v ih1 3.4 v 1-wire input low v il1 1.8 v 1-wire weak pullup current i weakpu 1.8 3.0 5.0 ma 1-wire active pullup current i actpu 9 15 ma strong pullup voltage drop d v strpu 0.5 v 2
ds2490 35 of 50 033199 parameter symbol min typ max units notes @ 50 ma load on 1-wire programming voltage drop @ 10 ma load on 1-wire d v prog 0.24 v 3 power on reset trip point v por 3.3 v vpp sensor trip point v pptrip 9.08 v notes: 1. applies only if 12.0v vpp supply is connected. if vpp and vd are tied together, current is less than 1 m a. 2. voltage difference between vd and 1-wire. 3. voltage difference between vpp and 1-wire. 4. the sum of id and ib will not exceed 50 ma. ac characteristics conditions: ta: 0 o c - 70 o c vd: 4.4v - 5.5v, vb: 3.0v - 3.6v parameter specification usb i/f as defined in chapter 7 of the usb specification 1-wire i/f see the section ?1-wire interface controller? of this document capacitance conditions: ta:25 o c parameter symbol min typ max units notes input capacitance cin 15 pf output capacitance cout 15 pf input/output capacitance cio 15 pf hw/sw application recommendations a schematic example of a usb to 1-wire adapter peripheral is shown in figure 13. software application recommendations ? tba. when using the ds2490 to communicate with the crypto-1-wire or devices which require large data transfers, it is suggested that the fifo for endpoint 2 (128 bytes) be filled with data before starting the communication command which will be responsible for the transmission to the 1-wire bus. once the command is started and if more data than the initial 128 bytes is to be sent, the endpoint 2 fifo status must be monitored via ep1 state registers. additional data must not be sent until there is less than 64 bytes remaining in the endpoint 2 fifo. operating in this fashion will keep the 1-wire bus from becoming idle during large data transfers to the 1-wire device as well as minimizing the usb bandwidth consumed by the ds2490.
ds2490 36 of 50 033199 hw design example: usb to 1-wire adapter figure 13 c4 33pf r2 1.5k c5 33pf x1 12.0 mhz c3 0.1 c1 0.1 u1 lt1121cst-3.3 (or equivalent) out 3 gnd 2 in 1 gnd tab c6 33pf c7 33pf c2 1.0 j2 rj-11 1 2 3 4 5 6 l1 emi filter l2 emi filter j1 usb gnd 4 d+ 3 d- 2 vbus 1 shield 5 r4 24, 1% u2 ds2490 pmod 1 nc 2 vb 3 suso 4 d- 5 d+ 6 gnd 7 nc 8 1-wire 9 nc 10 vpp 11 nc 12 xo 13 xi 14 nc 15 vd 16 d1 bat54s d2 ds9502 r3 24, 1% c8 notes: 1. resistors are 1/8w, 5% unless noted. 2. capacitor values are in microfarads unless noted. 3. capacitor voltage ratings are 10v minimum. 4. crystal is a seiko-epson ma-505-12.00m-c2 or equivalent. 5. emi filters l1 and l2 are murata blm21p221sg or equivalent.
ds2490 37 of 50 033199 appendix 1: ds2490 control commands, setup packet encoding control commands reset device setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_reset _device windex 0x0000 wlength 0x0000 start execution setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_start_exe windex 0x0000 wlength 0x0000 resume execution setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_resume_exe windex 0x0000 wlength 0x0000 halt execution when idle setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_halt_exe_idle windex 0x0000 wlength 0x0000 halt execution when done setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_halt_exe_done windex 0x0000
ds2490 38 of 50 033199 control commands wlength 0x0000 cancel command setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_cancel_cmd windex 0x0000 wlength 0x0000 cancel macro setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_cancel_macro windex 0x0000 wlength 0x0000 flush comm cmds the ds2490 must be in a halted state before the flush comm cmds command can be processed. setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_flush_comm_cmds windex 0x0000 wlength 0x0000 flush data rcv buffer the ds2490 must be in a halted state before the flush data rcv buffer command can be processed. setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_flush_rcv_buffer windex 0x0000 wlength 0x0000 flush data xmt buffer the ds2490 must be in a halted state before the flush data xmt buffer command can be processed. setup packet encoding: bmrequesttype 0x40 brequest control_cmd wvalue ctl_flush_xmt_buffer
ds2490 39 of 50 033199 control commands windex 0x0000 wlength 0x0000 get comm cmds the ds2490 must be in a halted state before the get comm cmds command can be processed. setup packet encoding: bmrequesttype 0xc0 brequest control_cmd wvalue ctl_get_comm_cmds windex 0x0000 wlength variable the value of the wlength field depends on the number of communication commands and parameters loaded in the fifo.
ds2490 40 of 50 033199 appendix 2: ds2490 communication commands, embedded command bits, setup packet encoding. communication commands contain embedded command parameter bits in the wvalue field. the definitions of bit parameters are described below. bit name description ch ch=1 follows the chain if the page is redirected. ch=0 stops reading if the page is redirected. cib cib=1 prevents a strong pullup to 5v if spu=1 and the bit read back from the 1-wire bus is 1. cib=0 generally enables the strong pullup to 5v. ps ps=1 reduces the preamble size to 2 bytes (rather than 3). ps=0 sets preamble size to 3 bytes. d data bit value to be written to the 1-wire bus. dt dt=1 activates/selects the crc16 generator dt=0 specifies no crc. f f=1 clears the buffers in case an error occurred during the execution of the previous command; requires that icp=0 in the previous command. f=0 prevents the buffers from being cleared. icp icp=1 indicates that the command is not the last one of a macro; as a consequence error feedback messages are suppressed. icp=0 indicates that the command is the last one of a macro or single command operation; enables error feedback signaling. im im=1 enables immediate execution of the command. assumes that all 1-wire device data required by the command has been received at ep2. im=0 prevents immediate execution of the command; execution must be started through a control function command. pst pst=1 continuously generate 1-wire reset sequences until a presence pulse is discovered. pst=0 generate only one 1-wire reset sequence. r r=1 performs a read function. r=0 performs a write function. rst rst=1 inserts a 1-wire reset before executing the command. rst=0 no 1-wire reset inserted. rts rts=1 returns the discrepancy information to the host if sm=1 and there are more devices than could be discovered in the current pass. rts=0 does not return discrepancy information. se se=1 enable the speed change on the 1-wire bus. se=0 disable the speed change on the 1-wire bus. sm sm=1 searches for and reports rom ids without really accessing a particular device. sm=0 makes a ?strong access? to a particular device. spu spu=1 inserts a strong pullup to 5v after a bit or byte or block i/o or do & release command. spu=0 no strong pullup.
ds2490 41 of 50 033199 type type=1 specifies programming pulse duration. type=0 specifies strong pullup duration. z z=1 checks if the 0-bits in the byte to be written are 0-bits in the byte read back form the device. z=0 checks if the byte to be written is identical to the one read back from the device. communication commands error escape if an error condition was detected, host intervention is required to recover from the error escape state. if no error occurred, the command is processed as a no operation. setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 0 0 0 f 1 1 rst byte 1: 0 0 0 0 0 0 0 1 windex 0x0000 wlength 0x0000 set duration setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 0 0 0 0 0 icp 0 byte 1: 0 0 0 1 type 0 1 im windex byte 2 byte 1 byte 2 ? 0x00 (unused) byte 1 ? new duration: unsigned 8-bit binary number specifying the new duration. see mode control section for byte bit weighting and additional format information. wlength 0x0000 pulse setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 0 0 0 f 0 icp 0 byte 1: 0 0 1 1 type 0 0 im windex 0x0000 wlength 0x0000
ds2490 42 of 50 033199 communication commands 1-wire reset setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 pst 0 0 f 0 icp 0 byte 1: 0 1 0 0 se 0 1 im windex byte 2 byte 1 byte 2 ? 0x00 (unused) byte 1 ? new speed: 0x02 with se=1 after overdrive ski p rom 0x01 or 0x00 with se=1 in all other cases don?t care with se=0 wlength 0x0000 bit i/o setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 cib 0 spu 0 0 icp 0 byte 1: 0 0 1 0 d 0 0 im windex wlength 0x0000 byte i/o setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 0 0 spu 0 0 icp 0 byte 1: 0 1 0 1 0 0 1 im windex byte 2 byte 1 byte 2 ? 0x00 (unused) byte 1 ? data byte to be sent to the 1-wire bus. to read only, the byte should be 0xff. wlength 0x0000 block i/o setup packet encoding:
ds2490 43 of 50 033199 communication commands bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 0 0 spu 0 0 icp rst byte 1: 0 1 1 1 0 1 0 im windex byte 2 byte 1 byte 2 ? block size (hi), most significant byte byte 1 ? block size (low), least significant byte wlength 0x0000 match access setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 0 0 0 0 0 icp rst byte 1: 0 1 1 0 se 1 0 im windex byte 2 byte 1 byte 2 ? new speed: 0x02 with se=1 after overdrive skip rom 0x01 or 0x00 with se=1 in all other cases don?t care with se=0 byte 1 ? 1-wire command: command to be used for addressing a 1-wire device. valid codes: 0x55 (match rom) 0x69 (overdrive match rom) wlength 0x0000 read straight setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: preamble size. number of bytes to be written. byte 1: 1 0 0 0 0 icp rst im windex byte 2 byte 1 byte 2 ? block size hi. number of bytes to be read, most significant byte. byte 1 - block size low. number of bytes to be read, least significant byte. wlength byte 2 byte 1 byte 2 ? 0x00 (not used)
ds2490 44 of 50 033199 communication commands byte 1 ? preamble size. number of bytes to be written. do & release setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 1 1 spu f 0 icp 0 byte 1: 1 0 0 1 r 0 1 im windex byte 2 byte 1 byte 2 ? 0x00 (unused) byte 1 ? size in bytes of preamble to be written. wlength 0x0000 set path setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 0 0 0 f 0 icp rst byte 1: 1 0 1 0 0 0 1 im windex byte 2 byte 1 byte 2 ? 0x00 (unused) byte 1 ? size in bytes of number of couplers that need to be activated to set up the path to the target device. wlength 0x0000 write sram page dt=1 activates the crc16 generator. this command is also applicable to the write ipr and write i/o buffer function of the crypto i button if cib=1. to write a partial page the page size parameter and the target address need to be set accordingly. setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 ps dt 0 f 0 icp 0 byte 1: 1 0 1 1 0 0 1 im windex byte 2 byte 1 byte 2 ? 0x00 (unused) byte 1 ? number of bytes to be sent to the device following a 3 byte preamble. this number is typically identical to the page size. a value of 0x00 stands for a 256 byte page.
ds2490 45 of 50 033199 communication commands wlength 0x0000 write eprom dt=1 selects the crc16 generator. otherwise an 8-bit crc is assumed. if z=1 the comparison of the byte read back for verification is limited to 0 bits only. setup packet encoding : bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 0 dt 0 f 0 icp 0 byte 1: 1 1 0 0 z 1 0 im windex byte 2 byte 1 byte 2 ? block size (hi), number of bytes to be written, most significant byte byte 1 ? block size (low), number of bytes to be written, least significant byte wlength 0x0000 read crc prot page dt=1 selects the crc16 generator, otherwise an 8-bit crc is assumed. this command is also applicable to the read ipr and read i/o buffer function of the crypto i button if cib=1. setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 ps dt 0 f 0 icp 0 byte 1: 1 1 0 1 0 1 0 im windex byte 2 byte 1 byte 2 ?number of pages to be read. byte 1 ? page size: number of bytes that are considered a page. typical is 32-decimal for data memory, 8 for status memory, and 40 decimal for monetary i buttons. page size 0 indicates a 256-byte page. wlength 0x0000 read redirect page w/crc setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 0 1 0 f 0 icp 1
ds2490 46 of 50 033199 communication commands byte 1: 1 1 1 0 ch 1 0 im windex byte 2 byte 1 byte 2 - page number to be used for the first read attempt. byte 1 ? page size: number of bytes that are considered a page. typical is 32 decimal for data memory. page size 0 indicates a 256- byte page. wlength 0x0000 search access setup packet encoding: bmrequesttype 0x40 brequest comm_cmd wvalue byte 2 byte 1 byte 2: 0 rts 0 0 f 0 icp rst byte 1: 1 1 1 1 sm 1 0 im windex byte 2 byte 1 byte 2 ? number of devices. maximum number of devices to be discovered in a single command call. a value of 0x00 indicates that all devices on the microlan are to be discovered. byte 1 ? 1-wire command: command to be used for addressing a 1-wire device. valid codes: 0xf0 (search rom) 0xec (conditional search rom) wlength 0x0000
ds2490 47 of 50 033199 appendix 3: ds2490 mode commands, setup packet encoding mode commands enable pulse setup packet encoding: bmrequesttype 0x40 brequest mode_cmd wvalue mod_pulse_en windex byte 2 byte 1 byte 2 ? 0x00 byte 1: 0 0 0 0 0 0 spu e prge strong pullup is enabled with spue=1, disabled with spue=0. +12v programming pulse is enabled with prge=1, disabled with prge=0. wlength 0x0000 enable speed change setup packet encoding: bmrequesttype 0x40 brequest mode_cmd wvalue mod_speed_change_en windex byte 2 byte 1 byte 2 ? 0x00 byte 1 ? boolean value. speed changes are enabled with true, disabled with false. wlength 0x0000 1-wire speed setup packet encoding: bmrequesttype 0x40 brequest mode_cmd wvalue mod_1wire_speed windex byte 2 byte 1 byte 2 ? 0x00 byte 1 ? 1-wire speed: code specifying communication speed of the 1-wire bus. see mode control section for code definition. wlength 0x0000 strong pullup duration setup packet encoding:
ds2490 48 of 50 033199 mode commands bmrequesttype 0x40 brequest mode_cmd wvalue mod_strong_pu_duration windex byte 2 byte 1 byte 2 ? 0x00 byte 1 ? unsigned 8-bit binary number specifying the pullup duration. see mode control section for byte bit weighting and additional format information. wlength 0x0000 pulldown slew rate setup packet encoding: bmrequesttype 0x40 brequest mode_cmd wvalue mod_pulldown_slewrate windex byte 2 byte 1 byte 2 ? 0x00 byte 1 ? code specifying the typical pulldown slew rate. see mode control section for code definition. wlength 0x0000 prog pulse duration setup packet encoding: bmrequesttype 0x40 brequest mode_cmd wvalue mod_prog_pulse_duration windex byte 2 byte 1 byte 2 ? 0x00 byte 1 ? unsigned 8-bit binary number specifying the eprom programming pulse duration. see mode control section for byte bit weighting and additional format information. wlength 0x0000 write-1 low time setup packet encoding: bmrequesttype 0x40 brequest mode_cmd wvalue mod_write1_lowtime windex byte 2 byte 1 byte 2 ? 0x00 byte 1 ? code specifying the write-1 low time duration. see mode control section for code definition.
ds2490 49 of 50 033199 mode commands wlength 0x0000 dsow0 recovery time setup packet encoding: bmrequesttype 0x40 brequest mode_cmd wvalue mod_dsow0_trec windex byte 2 byte 1 byte 2 ? 0x00 byte 1 ? code specifying the recovery time for data sample offset and write-0. see mode control section for code definition. wlength 0x0000
ds2490 50 of 50 033199 appendix 4: command, command type constant codes command type codes name brequest control_cmd 0x00 comm_cmd 0x01 mode_cmd 0x02 test_cmd 0x03 control command codes name wvalue ctl_reset_device 0x0000 ctl_start_exe 0x0001 ctl_resume_exe 0x0002 ctl_halt_exe_idle 0x0003 ctl_halt_exe_done 0x0004 ctl_cancel_cmd 0x0005 ctl_cancel_macro 0x0006 ctl_flush_comm_cmds 0x0007 ctl_flush_rcv_buffer 0x0008 ctl_flush_xmt_buffer 0x0009 ctl_get_comm_cmds 0x000a mode command codes name wvalue mod_ pulse_en 0x0000 mod_speed_change_en 0x0001 mod_1wire_speed 0x0002 mod_strong_pu_duration 0x0003 mod_pulldown_slewrate 0x0004 mod_prog_pulse_duration 0x0005 mod_write1_lowtime 0x0006 mod_dsow0_trec 0x0007


▲Up To Search▲   

 
Price & Availability of DS2490S

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X